<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Doxygen: pcl::cloud_composer::CloudCommand类 参考</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Doxygen
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- 制作者 Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'搜索','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','搜索');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('classpcl_1_1cloud__composer_1_1_cloud_command.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-methods">Public 成员函数</a> &#124;
<a href="#pro-methods">Protected 成员函数</a> &#124;
<a href="#pro-attribs">Protected 属性</a> &#124;
<a href="classpcl_1_1cloud__composer_1_1_cloud_command-members.html">所有成员列表</a>  </div>
  <div class="headertitle">
<div class="title">pcl::cloud_composer::CloudCommand类 参考<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
类 pcl::cloud_composer::CloudCommand 继承关系图:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classpcl_1_1cloud__composer_1_1_cloud_command.png" usemap="#pcl::cloud_5Fcomposer::CloudCommand_map" alt=""/>
  <map id="pcl::cloud_5Fcomposer::CloudCommand_map" name="pcl::cloud_5Fcomposer::CloudCommand_map">
<area href="classpcl_1_1cloud__composer_1_1_delete_item_command.html" alt="pcl::cloud_composer::DeleteItemCommand" shape="rect" coords="0,112,269,136"/>
<area href="classpcl_1_1cloud__composer_1_1_merge_cloud_command.html" alt="pcl::cloud_composer::MergeCloudCommand" shape="rect" coords="279,112,548,136"/>
<area href="classpcl_1_1cloud__composer_1_1_modify_item_command.html" alt="pcl::cloud_composer::ModifyItemCommand" shape="rect" coords="558,112,827,136"/>
<area href="classpcl_1_1cloud__composer_1_1_new_item_cloud_command.html" alt="pcl::cloud_composer::NewItemCloudCommand" shape="rect" coords="837,112,1106,136"/>
<area href="classpcl_1_1cloud__composer_1_1_split_cloud_command.html" alt="pcl::cloud_composer::SplitCloudCommand" shape="rect" coords="1116,112,1385,136"/>
  </map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public 成员函数</h2></td></tr>
<tr class="memitem:a7c1971d09ed09ce6f21222f9b1f9b6a9"><td class="memItemLeft" align="right" valign="top"><a id="a7c1971d09ed09ce6f21222f9b1f9b6a9"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>CloudCommand</b> (ConstItemList input_data, QUndoCommand *parent=0)</td></tr>
<tr class="separator:a7c1971d09ed09ce6f21222f9b1f9b6a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a83ef3807d4bd29a88b94adae05918f06"><td class="memItemLeft" align="right" valign="top"><a id="a83ef3807d4bd29a88b94adae05918f06"></a>
virtual bool&#160;</td><td class="memItemRight" valign="bottom"><b>runCommand</b> (<a class="el" href="classpcl_1_1cloud__composer_1_1_abstract_tool.html">AbstractTool</a> *tool)=0</td></tr>
<tr class="separator:a83ef3807d4bd29a88b94adae05918f06"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adc6ca1f8d4a620524e85ada7a1572725"><td class="memItemLeft" align="right" valign="top"><a id="adc6ca1f8d4a620524e85ada7a1572725"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>undo</b> ()=0</td></tr>
<tr class="separator:adc6ca1f8d4a620524e85ada7a1572725"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9840db99aaf2eb19d9202ce304b9e6e3"><td class="memItemLeft" align="right" valign="top"><a id="a9840db99aaf2eb19d9202ce304b9e6e3"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>redo</b> ()=0</td></tr>
<tr class="separator:a9840db99aaf2eb19d9202ce304b9e6e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2890e9ab0e4b4ee8e805bd337be567fc"><td class="memItemLeft" align="right" valign="top"><a id="a2890e9ab0e4b4ee8e805bd337be567fc"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setProjectModel</b> (<a class="el" href="classpcl_1_1cloud__composer_1_1_project_model.html">ProjectModel</a> *model)</td></tr>
<tr class="separator:a2890e9ab0e4b4ee8e805bd337be567fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aabec73010e255033a890a3d6635dc97f"><td class="memItemLeft" align="right" valign="top"><a id="aabec73010e255033a890a3d6635dc97f"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setInputData</b> (ConstItemList input_data)</td></tr>
<tr class="separator:aabec73010e255033a890a3d6635dc97f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected 成员函数</h2></td></tr>
<tr class="memitem:a807c527fd7a6fb62a6c79a0b5cc56f29"><td class="memItemLeft" align="right" valign="top"><a id="a807c527fd7a6fb62a6c79a0b5cc56f29"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1cloud__composer_1_1_cloud_command.html#a807c527fd7a6fb62a6c79a0b5cc56f29">replaceOriginalWithNew</a> (QList&lt; const <a class="el" href="classpcl_1_1cloud__composer_1_1_cloud_composer_item.html">CloudComposerItem</a> * &gt; originals, QList&lt; <a class="el" href="classpcl_1_1cloud__composer_1_1_cloud_composer_item.html">CloudComposerItem</a> * &gt; new_items)</td></tr>
<tr class="memdesc:a807c527fd7a6fb62a6c79a0b5cc56f29"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes the original item(s) from the model and replaces with the replacement(s) Replacements are only inserted once, original items must have same parent This stores the removed items in removed_items_ <br /></td></tr>
<tr class="separator:a807c527fd7a6fb62a6c79a0b5cc56f29"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a70255bccd4bf183f155a50da6daf12be"><td class="memItemLeft" align="right" valign="top"><a id="a70255bccd4bf183f155a50da6daf12be"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1cloud__composer_1_1_cloud_command.html#a70255bccd4bf183f155a50da6daf12be">restoreOriginalRemoveNew</a> (QList&lt; const <a class="el" href="classpcl_1_1cloud__composer_1_1_cloud_composer_item.html">CloudComposerItem</a> * &gt; originals, QList&lt; <a class="el" href="classpcl_1_1cloud__composer_1_1_cloud_composer_item.html">CloudComposerItem</a> * &gt; new_items)</td></tr>
<tr class="memdesc:a70255bccd4bf183f155a50da6daf12be"><td class="mdescLeft">&#160;</td><td class="mdescRight">This removes new_items from the model and restores originals <br /></td></tr>
<tr class="separator:a70255bccd4bf183f155a50da6daf12be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e9addb83b93225d3155987226ff7b71"><td class="memItemLeft" align="right" valign="top"><a id="a4e9addb83b93225d3155987226ff7b71"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1cloud__composer_1_1_cloud_command.html#a4e9addb83b93225d3155987226ff7b71">canUseTemplates</a> (ConstItemList &amp;input_data)</td></tr>
<tr class="memdesc:a4e9addb83b93225d3155987226ff7b71"><td class="mdescLeft">&#160;</td><td class="mdescRight">This is used to check if a templated version of a tool can be used For this to return true, all items must be clouds, and must have the same template type <br /></td></tr>
<tr class="separator:a4e9addb83b93225d3155987226ff7b71"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
Protected 属性</h2></td></tr>
<tr class="memitem:a950f71e4bcdd20c09eeb227e7f5be466"><td class="memItemLeft" align="right" valign="top"><a id="a950f71e4bcdd20c09eeb227e7f5be466"></a>
ConstItemList&#160;</td><td class="memItemRight" valign="bottom"><b>original_data_</b></td></tr>
<tr class="separator:a950f71e4bcdd20c09eeb227e7f5be466"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3a750045fe5c61c7472dff36895fe49"><td class="memItemLeft" align="right" valign="top"><a id="ae3a750045fe5c61c7472dff36895fe49"></a>
QMap&lt; QStandardItem *, QStandardItem * &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>removed_to_parent_map_</b></td></tr>
<tr class="separator:ae3a750045fe5c61c7472dff36895fe49"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8af509b68dfa3fa31bbde96dfbfecc5"><td class="memItemLeft" align="right" valign="top"><a id="aa8af509b68dfa3fa31bbde96dfbfecc5"></a>
QList&lt; <a class="el" href="structpcl_1_1cloud__composer_1_1_output_pair.html">OutputPair</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>output_data_</b></td></tr>
<tr class="separator:aa8af509b68dfa3fa31bbde96dfbfecc5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6e476337f36881192c8cbde18be08a41"><td class="memItemLeft" align="right" valign="top"><a id="a6e476337f36881192c8cbde18be08a41"></a>
<a class="el" href="classpcl_1_1cloud__composer_1_1_project_model.html">ProjectModel</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>project_model_</b></td></tr>
<tr class="separator:a6e476337f36881192c8cbde18be08a41"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6331cd45770a690177f9659fa9834afd"><td class="memItemLeft" align="right" valign="top"><a id="a6331cd45770a690177f9659fa9834afd"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1cloud__composer_1_1_cloud_command.html#a6331cd45770a690177f9659fa9834afd">last_was_undo_</a></td></tr>
<tr class="memdesc:a6331cd45770a690177f9659fa9834afd"><td class="mdescLeft">&#160;</td><td class="mdescRight">This determines if we delete original items or not on destruction If the command is being deleted because stack is at limit, then we want to only delete the originals, since the command is staying for good (new items shouldn't be deleted) On the other hand, if we destruct after an undo, then we want to delete the new items (but not the originals) <br /></td></tr>
<tr class="separator:a6331cd45770a690177f9659fa9834afd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8a4b94fc8692e4195d0d56b486379603"><td class="memItemLeft" align="right" valign="top"><a id="a8a4b94fc8692e4195d0d56b486379603"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>can_use_templates_</b></td></tr>
<tr class="separator:a8a4b94fc8692e4195d0d56b486379603"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f73216ee224383aef4f60df3bdc4745"><td class="memItemLeft" align="right" valign="top"><a id="a3f73216ee224383aef4f60df3bdc4745"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>template_type_</b></td></tr>
<tr class="separator:a3f73216ee224383aef4f60df3bdc4745"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<hr/>该类的文档由以下文件生成:<ul>
<li>apps/cloud_composer/include/pcl/apps/cloud_composer/<a class="el" href="commands_8h_source.html">commands.h</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><b>pcl</b></li><li class="navelem"><b>cloud_composer</b></li><li class="navelem"><a class="el" href="classpcl_1_1cloud__composer_1_1_cloud_command.html">CloudCommand</a></li>
    <li class="footer">制作者 <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1 </li>
  </ul>
</div>
</body>
</html>
